home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C/C++ Users Group Library 1996 July
/
C-C++ Users Group Library July 1996.iso
/
listings
/
v_02_06
/
tp55rtl.src
< prev
next >
Wrap
Text File
|
1990-11-04
|
13KB
|
413 lines
;=============================================================================
;=============================================================================
;
; Label Name Library for Turbo Pascal v5.5
;
; Writen by Clark A. Calkins,
; C. C. Software
; 1907 Alvarado Ave.
; Walnut Creek, CA 94596
;
; circa September 1990
;
; This file may be freely copied and used for non-commercial purposes.
; Intended for use with the Masterful Disassembler (MD86) version 2.3 or
; later. This file should be compiled with MD86MAC v1.3 or later. No
; compiler error or warning messages should be generated.
;
; There are no known coding errors in these definitions but no guarantees
; are implied.
;
;=============================================================================
;
; Initialize routine. This sets interupt vectors and segment registers.
;
label = TpInit
mask = $ff,$00,$00,$ff,$ff,$ff,$ff,$00,$00,$ff,$ff,$ff,$ff,$ff
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
compare = $ba,$00,$00,$8e,$da,$8c,$06,$00,$00,$33,$ed,$8b,$c4,$05
compare = $13,$00,$b1,$04,$d3,$e8,$8c,$d2,$03,$c2
endlabel
;
; Normal exit routine.
;
label = TpExit
mask = $ff,$ff,$ff,$ff,$ff,$00,$00,$ff,$ff,$ff,$ff,$00,$00,$ff
mask = $ff,$ff,$ff,$ff
compare = $33,$c9,$33,$db,$ba,$00,$00,$8e,$da,$fb,$a3,$00,$00,$8b
compare = $c1,$0b,$c3,$74
endlabel
;
; String support functions.
;
label = StrStore
nomask
compare = $fc,$8b,$dc,$8c,$da,$36,$c4,$7f,$08,$36,$c5,$77,$04
compare = $ac,$aa,$8a,$c8,$32,$ed,$f3,$a4,$8e,$da,$ca,$04,$00
endlabel
;
label = StrMove
nomask
compare = $fc,$8b,$dc,$8c,$da,$36,$c5,$77,$0a,$36,$c4,$7f,$06
compare = $36,$8b,$4f,$04,$ac,$3a,$c1,$76,$02,$8a,$c1,$aa,$8a
compare = $c8,$32,$ed,$f3,$a4,$8e,$da,$ca,$0a,$00
endlabel
;
label = StrCopy
nomask
compare = $fc,$8b,$dc,$8c,$da,$36,$c4,$7f,$0c,$36,$c5,$77,$08
compare = $8a,$04,$32,$e4,$36,$8b,$4f,$06,$0b,$c9,$7f,$03,$b9
compare = $01,$00,$03,$f1,$2b,$c1,$72,$13,$40,$36,$8b,$4f,$04
compare = $0b,$c9,$7d,$02,$33,$c9,$3b,$c1,$76,$06,$8b,$c1,$eb
compare = $02,$33,$c0,$aa,$8b,$c8,$f3,$a4,$8e,$da,$ca
endlabel
;
label = StrAdd
nomask
compare = $fc,$8b,$dc,$8c,$da,$36,$c4,$7f,$08,$36,$c5,$77,$04
compare = $26,$8a,$0d,$32,$ed,$ac,$26,$00,$05,$73,$08,$26,$c6
compare = $05,$ff,$8a,$c1,$f6,$d0,$03,$f9,$47,$8a,$c8,$f3,$a4
compare = $8e,$da,$ca,$04,$00
endlabel
;
label = StrLngth
nomask
compare = $8b,$dc,$36,$c4,$7f,$04,$26,$8a,$05,$32,$e4,$ca,$04
compare = $00
endlabel
;
label = WrtItem
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
compare = $55,$8b,$ec,$1e,$c4,$7e,$0c,$06,$57,$e8,$00,$00
compare = $75,$25,$c5,$76,$08,$8b,$4e,$06,$fc,$ac,$32,$e4,$2b,$c8
endlabel
;
label = IO_end
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
mask = $ff,$ff,$ff,$00,$00,$ff,$ff,$ff,$ff,$ff
compare = $8b,$dc,$36,$c4,$7f,$04,$26,$83,$7d,$1a,$00,$75,$03,$ca,$04
compare = $00,$83,$3e,$00,$00,$00,$75,$f6,$06,$57
endlabel
;
label = Get_IO
mask = $ff,$ff,$ff,$ff,$00,$00,$ff
mask = $ff,$ff,$00,$00,$ff,$ff,$ff,$ff,$ff,$00,$00,$ff
compare = $33,$c0,$87,$06,$00,$00,$cb
compare = $83,$3e,$00,$00,$00,$75,$01,$cb,$a1,$00,$00,$e9
endlabel
label = Check_IO
mask = $ff,$ff,$00,$00,$ff,$ff,$ff,$ff,$ff,$00,$00,$ff
compare = $83,$3e,$00,$00,$00,$75,$01,$cb,$a1,$00,$00,$e9
endlabel
;
label = Line_end
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$ff,$ff,$ff,$ff
mask = $ff,$00,$00,$ff,$ff,$ff,$00,$00,$ff,$ff,$ff,$ff,$ff,$ff,$ff
mask = $ff
compare = $8b,$dc,$36,$c4,$7f,$04,$06,$57,$e8,$00,$00,$75,$0a,$b0,$0d
compare = $e8,$00,$00,$b0,$0a,$e8,$00,$00,$5f,$07,$26,$89,$5d,$08,$eb
compare = $06
endlabel
;
label = RdStrItm
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$ff
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
mask = $ff,$ff,$ff
compare = $55,$8b,$ec,$1e,$c4,$7e,$0c,$06,$57,$e8,$00,$00
compare = $c5,$76,$08,$b9,$00,$00,$75,$15,$e8,$00,$00,$3c
compare = $0d,$74,$0e,$3c,$1a,$74,$0a,$43,$41,$46,$88,$04
compare = $3b,$4e,$06
endlabel
;
label = Get_EOL
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$ff
mask = $ff,$ff,$00,$00,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
mask = $ff,$ff,$00,$00,$ff,$ff
compare = $8b,$dc,$36,$c4,$7f,$04,$06,$57,$e8,$00,$00,$75
compare = $14,$e8,$00,$00,$3c,$1a,$74,$0d,$43,$3c,$0d,$75
compare = $f4,$e8,$00,$00,$3c,$0a
endlabel
;
; Long and short integer file I/O procedures.
;
label = WrtDblWd
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
mask = $ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$ff,$ff,$ff,$ff
mask = $ff,$ff,$00,$00,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
mask = $ff
compare = $55,$8b,$ec,$83,$ec,$20,$8b,$46,$08,$8b,$56,$0a
compare = $8d,$7e,$e0,$16,$07,$e8,$00,$00,$c4,$7e,$0c,$06
compare = $57,$e8,$00,$00,$75,$1f,$8b,$46,$06,$2b,$c1,$7e
compare = $0d
endlabel
;
label = RdDblWrd
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
mask = $00,$00,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$ff,$ff
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
compare = $55,$8b,$ec,$83,$ec,$20,$c4,$7e,$06,$06,$57,$e8
compare = $00,$00,$be,$00,$00,$75,$21,$e8,$00,$00,$3c,$1a
compare = $74,$1a,$3c,$20,$77,$03,$43,$eb,$f2
endlabel
;
; Procedure to assign a file name to a file variable. Used for text type
; files.
;
labelname = Txt_asgn
nomask
compare = $8b,$dc,$1e,$36,$c4,$7f,$08,$36,$c5,$77,$04,$fc,$33,$c0
compare = $ab,$b8,$b0,$d7,$ab,$b8,$80,$00,$ab,$33,$c0,$ab,$ab,$ab
endlabel
;
; Procedure to assign binary files.
;
labelname = Bin_asgn
nomask
compare = $8b,$dc,$1e,$36,$c4,$7f,$08,$36,$c5,$77,$04,$fc,$33,$c0
compare = $ab,$b8,$b0,$d7,$ab,$33,$c0,$b9,$16,$00,$f3,$ab
endlabel
;
; Procedure to open a text file.
;
labelname = Txt_open
nomask
compare = $8b,$dc,$36,$c4,$7f,$04,$26,$8b,$45,$02,$3d,$b1,$d7
compare = $74,$12,$3d,$b2,$d7,$74,$0d
endlabel
;
; Procedure to open a text file for reading.
;
labelname = TxtReset
nomask
compare = $ba,$b1,$d7,$eb
argument
rbyte = 4
type = nearaddress
name = Txt_open
endargument
endlabel
;
; Procedure to open a text file for writing.
;
labelname = TxtWrite
nomask
compare = $ba,$b2,$d7,$eb
argument
rbyte = 4
type = nearaddress
name = Txt_open
endargument
endlabel
;
; Procedure to open a binary file for reading.
;
labelname = BinReset
mask = $ff,$00,$00,$ff,$ff,$ff,$ff,$ff,$ff
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
compare = $a0,$00,$00,$b4,$3d,$33,$d2,$eb,$06
compare = $b8,$00,$3c,$ba,$01,$00,$55,$8b,$ec,$c4,$7e,$08,$26,$81,$7d
compare = $02,$b0,$d7,$74,$1a,$26,$81,$7d,$02,$b3,$d7,$74,$08
endlabel
;
; Procedure to open a binary file for writing.
;
labelname = BinWrite
nomask
compare = $b8,$00,$3c,$ba,$01,$00,$55,$8b,$ec,$c4,$7e,$08,$26,$81,$7d
compare = $02,$b0,$d7,$74,$1a,$26,$81,$7d,$02,$b3,$d7,$74,$08
endlabel
;
;============================================================================
; Label names for the CRT unit.
;============================================================================
;
; Label name for GOTOXY(x,y) procedure.
;
labelname = GotoXYp
mask = $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
mask = $00,$00,$ff,$ff,$ff,$ff,$00,$00,$ff,$ff,$ff,$ff,$ff,$ff
mask = $00,$00,$ff,$ff
compare = $8b,$dc,$36,$8a,$57,$06,$36,$8a,$77,$04,$fe,$ca,$02,$16
compare = $00,$00,$72,$17,$3a,$16,$00,$00,$77,$11,$fe,$ce,$02,$36
compare = $00,$00,$72,$09
endlabel
;
; The clear to end of line procedure CLREOL.
;
labelname = ClrEol
mask = $ff,$00,$00,$ff,$